DWHをCDPのように使える!?Hightouchの「Customer Studio」でGUI操作でセグメンテーションしてみた
さがらです。
HightouchはDWH⇨各種アプリケーションへのデータ転送に使える「ReverseETL」のサービスですが、Customer StudioというDWHをCDP(Customer Data Platform)のように扱ってCRM・MAのツールと連携してマーケティング活動に伴うセグメンテーション・分析を行える機能があります。※Customer StudioはBussinessプラン以上でのみ使用可能のためご注意ください。
今回はCustomer Studioの基本機能として、ドキュメントのImplementation stepsに沿って、Hightouch上でGUIベースでセグメンテーションを行ってみます。
事前準備
SourceとDestinationの設定
事前に、Customer Studioでセグメンテーションする元となるデータを持つSourceと、Destinationを登録しておきます。
今回は、Sourceとしてユーザーデータとイベントデータを保持するSnowflake、DestinationにはBrazeを定義しておきます。
Data Schemaの定義
まず「Data Schema」と呼ばれる、Hightouchで定義した各Modelのリレーションを定義します。
画面左のメニューから、Schema
を押します。
まず、使用するSourceを画面左上のプルダウンリストから選択します。
初めてSchemaを定義する場合には、画面中央に下図のように表示されていると思います。このCreate parent model
を選択します。
まず、Parent Modelですが、基本的には顧客情報などのセグメンテーションのベースとなる情報を持つテーブルを選択します。
ここでは、ユーザーデータを持つテーブルを選択し、右下のContinue
を押します。
続けて、対象のテーブルをParent Modelとして定義するために、各情報を入れます。Primary label
や``Secondary label`はオプションですが、設定しておくと対象のユーザーの識別がしやすくなると思います。
この入力が終わったら、右下のCreate parent model
を押します。
続いて、作成したParent Modelだけではユーザーのデータしか持たないため、イベントのデータを持つテーブルを紐づけます。
作成したParent Modelの画面右の「+」を押し、イベントのCreate a related event
を押します。
イベントデータを持つテーブルを選択し、Continue
を押します。
続いて、対象のイベントデータに関する各情報を入力します。
EVENTの場合にはTimestamp
でTimestamp型のカラムを選択する必要があります。また、Parent Modelで設定したユーザーデータを保持するテーブルとのRelatonshipも定義する必要があります。
これらの情報を入力し終えたら、画面右下のCreate event
を押します。
これで、ユーザーデータとイベントデータの紐づけが完了しました!
Audienceの定義
続いて、Audienceを定義します。Audienceとは、Hightouch上でGUIベースでセグメンテーションを行った顧客のリストのことを意味します。
まず、画面左のメニューからAudiences
を選択します。
初めてAudienceを作成する場合には下図のように表示されますので、Add audience
を押します。
画面が変わりますので、使用するParent Modelを選択します。
Audienceの設定では、基本的に指定したModelに対するフィルタの追加でセグメンテーションをしていく仕様となっています。
フィルタを追加するには、+ Add filter
を押します。すると、フィルタをかけたいフィールドを選択する画面が出てきます。
ここでは、ユーザーデータとイベントデータ、それぞれのフィールドからフィルタをかけてみます。
まずユーザーデータに関するフィールドを用いたフィルタですが、Properties
から選択可能です。
試しにCITY
を選択してみます。すると画面上にフィールドがでてきて、フィルタの条件を設定することが可能です。個人的に、値を選択するときにその値がどれだけのレコード存在しているか数値でわかるのが嬉しいですね。
続いて、イベントデータを用いたフィルタを設定してみます。
+ Add filter
を押し、左の分類からEvents
を押して、Parent Modelと紐づけたEVENTを選択します。
すると、イベントデータにおいて、条件や期間を絞り込んだ特定のイベントが、何回あったかという条件で絞り込みが出来ます。
また、各フィルタの条件はANDだけでなくORにすることも可能です。クリックすることで切り替えが可能です。
すべてANDにするか、すべてORにするか、で設定可能することになります。
一通りフィルタの設定が終わったら、画面右上のCalculate size
を押すと、このフィルタの条件でどれだけのレコードがマッチするか、件数を出してくれます。
右上のShow insights
では、このAudienceに該当するユーザーの一覧とそのユーザーをクリックすることで属性情報を確認したり、他のAudienceと比較したり、ということが出来ます。ここだけでもなかなかリッチな機能なので、これはまた別途ブログとして執筆予定です!
こういった流れでAudienceの設定を行い、完了したら画面右下のContinueを押します。
最後に、AudienceのNameやDescriptionを定義します。完了したら、右下のFinish
を押します。これでユーザーのセグメンテーションを行い、Audienceが出来ました!
参考:Audienceを用いたSyncについて
作成したAudienceを用いてDestinationとなるCRM・MAツールなどに連携する方法についても少し触れておきます。例えばBrazeだと、API-triggeredのCampaignやCanvasへHightouchのAudienceを連携することが可能です。
実際にAudienceを用いたSyncですが、基本的には作成したAudienceの右上のAdd sync
を押したら、あとは通常のModel⇨DestinationへSyncさせるときと流れは同じです!
最後に
HightouchのCustomer Studioを用いて、GUIベースでセグメンテーションを行ってみました。
GUIベースで感覚的にフィルタをかけてセグメンテーションを行いAudienceを作成すれば、HightouchにDestinationとして設定できるサービスに対して同じAudienceでSyncを行うことができるので、Hightouch上でセグメンテーションの定義を統合管理できるのが強みの機能だと思います。
本記事ではCustomer Studioの基礎の基礎だけ書きましたが、まだまだ多くの機能がありますのでそちらもブログを書いていきたいですね!